﻿using Domain.Entity;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Domain.Repository
{
    public interface IHFRepository
    {
        HFQuery SelectHFQAsync(string zhi);
		Task<bool> AddHFAsync(HF hf);
		/// <summary>
		/// 查询是否复核的
		/// </summary>
		/// <returns></returns>
		HFFenYE FenYeHFAsync(int zt, int page, int pageSize);
		HFFenYE HFfenye(string firstKindName, string secondKindName, string thirdKindName, DateTime startDate, DateTime endDate, int page, int pageSize);
		HFFenYE FenYeHFTJAsync(string firstKindName, string secondKindName, string thirdKindName, DateTime startDate, DateTime endDate, int page, int pageSize,int zt);
		Task<bool> UpdateHFAsync(HF hf);
		HFFenYE FenYeHFGJZAsync(int page, int pageSize, int zt,string gjz);

        //修改薪酬发放登记状态 及应发薪酬总额和实发薪酬总额
        Task<bool> RemoveHFQAsyncHFS(string humanId, double DemandSalaraySum, double PaidSalarySum);
        //根据档案编号查询出来对应的薪酬发放编号
        Task<string> GetSalaryGrantIdAsync(string HumanId);
		HFFenYE HFFenYEZTAsync(string firstKindName, string secondKindName, string thirdKindName, string majorKindName, string majorName, DateTime startDate, DateTime endDate, int page, int pageSize, int zt1, int zt2);
		HFFenYE FenYeHFGJZZTAsync(int page, int pageSize, int zt1,int zt2, string gjz);
		Task<bool> UpdateHFZTAsync(HF hf);
		Task<bool> DeleteHFAsync(int id);

		Task<bool> UpdateHFMC(HF hF);
		Task<bool> UpdateHumanFileStatus(string humanId, int zt);

    }
}
